Análisis de Datos I
Tarea 7

Librerias

library(factoextra)
library(FactoMineR)

Ejercicio 3

Ejercicio 4

Usando las variables categóricas de la tabla de datos poison del paquete FactoMineR realice un AFCM con la función MCA(…) del paquete FactoMineR. Incluya e interprete al menos: 1) Grafico de varianzas explicadas por los ejes 2) Grafico de variables 3) Grafico de variables con modalidades 4) el Biplot 5) cos2(x) de modalidades y variables y 6) contribuciones de variables y modalidades a la formación de ejes.

Base de datos

Se carga la base de datos poison del paquete FactoMiner.

data(poison)

knitr::kable(head(poison[,1:10]))
Age Time Sick Sex Nausea Vomiting Abdominals Fever Diarrhae Potato
9 22 Sick_y F Nausea_y Vomit_n Abdo_y Fever_y Diarrhea_y Potato_y
5 0 Sick_n F Nausea_n Vomit_n Abdo_n Fever_n Diarrhea_n Potato_y
6 16 Sick_y F Nausea_n Vomit_y Abdo_y Fever_y Diarrhea_y Potato_y
9 0 Sick_n F Nausea_n Vomit_n Abdo_n Fever_n Diarrhea_n Potato_y
7 14 Sick_y M Nausea_n Vomit_y Abdo_y Fever_y Diarrhea_y Potato_y
72 9 Sick_y M Nausea_n Vomit_n Abdo_y Fever_y Diarrhea_y Potato_y

AFCM

Se realiza el AFCM con las variables categóricas de la base de datos poison

poison_quali <- poison[,-c(1:2)]
poisonAFCM <- MCA(poison_quali, ncp = 13, graph = FALSE)
poisonAFCM
## **Results of the Multiple Correspondence Analysis (MCA)**
## The analysis was performed on 55 individuals, described by 13 variables
## *The results are available in the following objects:
## 
##    name              description                       
## 1  "$eig"            "eigenvalues"                     
## 2  "$var"            "results for the variables"       
## 3  "$var$coord"      "coord. of the categories"        
## 4  "$var$cos2"       "cos2 for the categories"         
## 5  "$var$contrib"    "contributions of the categories" 
## 6  "$var$v.test"     "v-test for the categories"       
## 7  "$var$eta2"       "coord. of variables"             
## 8  "$ind"            "results for the individuals"     
## 9  "$ind$coord"      "coord. for the individuals"      
## 10 "$ind$cos2"       "cos2 for the individuals"        
## 11 "$ind$contrib"    "contributions of the individuals"
## 12 "$call"           "intermediate results"            
## 13 "$call$marge.col" "weights of columns"              
## 14 "$call$marge.li"  "weights of rows"

Gráfico de varianzas explicadas por los ejes

Para realizar dicho gráfico se deben obtener las varianzas explicadas por los ejes, los cuales, son los valores propios asociados a cada eje.

eigen_values <- get_eigenvalue(poisonAFCM)
eigen_values
##        eigenvalue variance.percent cumulative.variance.percent
## Dim.1  0.35400698        35.400698                    35.40070
## Dim.2  0.11321219        11.321219                    46.72192
## Dim.3  0.09360912         9.360912                    56.08283
## Dim.4  0.08218096         8.218096                    64.30093
## Dim.5  0.07415156         7.415156                    71.71608
## Dim.6  0.06628886         6.628886                    78.34497
## Dim.7  0.05973746         5.973746                    84.31871
## Dim.8  0.05264927         5.264927                    89.58364
## Dim.9  0.04545157         4.545157                    94.12880
## Dim.10 0.03461955         3.461955                    97.59075
## Dim.11 0.01164482         1.164482                    98.75523
## Dim.12 0.01037235         1.037235                    99.79247
## Dim.13 0.00207531         0.207531                   100.00000

A continuación, se presenta el gráfico de varianzas explicadas por los ejes.

fviz_screeplot(poisonAFCM, ncp = 13, addlabels = TRUE, ylim = c(0, 45))

Como se puede observar, las componente 1 y 2 contribuyen más en la explicación de la varianza. Conforme se realizan más pasos del AFCM, menos aporte a la varianza se obtiene de cada componente principal.

Gráfico de las variables

fviz_mca_var(poisonAFCM, choice = "mca.cor", repel = TRUE) 

En el gráfico se puede apreciar que las variables Fever, Sick, Diarrhae y Abdominals tienen mayor presencia en la componente principal 1. Por otro lado, las variables Courgette, Potato, Icecream, Sex y Fish tienen mayor presencia en la componente 2. También, se puede apreciar que las variables Cheese, Nausea y Mayo tienen una presencia baja en ambos componentes y Vomiting una presencia moderada.

Gráfico de las modalidades con las variables

fviz_mca_var(poisonAFCM, choice = "var.cat", repel = TRUE)

En el gráfico se muestra que un infante que esté enfermo es probable que haya consumido queso, pescado, helado o mayo. Y que también presente fiebre, náuseas, diarrea, vómitos o dolor abdominal. En cambio, aquellos infantes que no estén enfermos es probable que no consumieron queso o mayo y que tampoco presenten fiebre, diarrea o dolor abdominal. Además, infantes que consumieron papas y courgette no presentan náuseas o vómitos. Los infantes que no comieron pescado es muy probable que no hayan consumido papas por la correlación positiva fuerte que se muestra.

Gráfico de superposición Biplot

Se muestra el gráfico de superposicion de las variables con los individuos.

fviz_mca_biplot(poisonAFCM, repel = TRUE)

Se puede observar que se forman dos clústeres de individuos, una de los que no están enfermos y otro de los que sí, y que presentan las características mencionadas en el análisis del gráfico anterior.

Gráficos de cos2(x) y contribuciones de las modalidades de las variables

Se van a gráficar las calidades de representación y las contribuciones de las modalidades para las dos primeras dimensiones.

Para lo cual, es necesario conocer los cosenos cuadrados y contribuciones de las modalidades.

Cos2 de las modalidades

var_categories <- get_mca_var(poisonAFCM)
head(var_categories$cos2)
##               Dim 1        Dim 2        Dim 3        Dim 4       Dim 5
## Sick_n   0.93285731 0.0008493572 0.0006478363 3.883982e-03 0.001599471
## Sick_y   0.93285731 0.0008493572 0.0006478363 3.883982e-03 0.001599471
## F        0.00125452 0.1565707310 0.1297182185 4.544158e-02 0.537481392
## M        0.00125452 0.1565707310 0.1297182185 4.544158e-02 0.537481392
## Nausea_n 0.22388503 0.0290659795 0.2720246837 3.289028e-05 0.020597910
## Nausea_y 0.22388503 0.0290659795 0.2720246837 3.289028e-05 0.020597910
##               Dim 6       Dim 7        Dim 8        Dim 9      Dim 10
## Sick_n   0.00336586 0.009404956 0.0160420963 0.0001080852 0.002074556
## Sick_y   0.00336586 0.009404956 0.0160420963 0.0001080852 0.002074556
## F        0.03251088 0.056787939 0.0001028503 0.0333950159 0.005910396
## M        0.03251088 0.056787939 0.0001028503 0.0333950159 0.005910396
## Nausea_n 0.03551336 0.005296711 0.3108206902 0.0930902485 0.008789863
## Nausea_y 0.03551336 0.005296711 0.3108206902 0.0930902485 0.008789863
##                Dim 11       Dim 12       Dim 13
## Sick_n   0.0108966145 8.509901e-05 1.818478e-02
## Sick_y   0.0108966145 8.509901e-05 1.818478e-02
## F        0.0004259402 3.935551e-04 6.976464e-06
## M        0.0004259402 3.935551e-04 6.976464e-06
## Nausea_n 0.0003524570 4.905436e-04 3.962549e-05
## Nausea_y 0.0003524570 4.905436e-04 3.962549e-05

Contribuciones de las modalidades a las componentes

head(var_categories$contrib)
##                Dim 1      Dim 2      Dim 3        Dim 4       Dim 5     Dim 6
## Sick_n   14.00493008 0.03987261  0.0367811 0.2511791673  0.11463936 0.2698567
## Sick_y    6.26536346 0.01783775  0.0164547 0.1123696275  0.05128603 0.1207253
## F         0.01338208 5.22245977  5.2328771 2.0880456529 27.37164358 1.8520211
## M         0.01387771 5.41588421  5.4266874 2.1653806771 28.38540816 1.9206145
## Nausea_n  1.06142287 0.43089055  4.8771415 0.0006716942  0.46620623 0.8991383
## Nausea_y  3.80343194 1.54402447 17.4764237 0.0024069041  1.67057233 3.2219122
##              Dim 7        Dim 8        Dim 9    Dim 10     Dim 11     Dim 12
## Sick_n   0.8367342  1.619371009  0.012638479 0.3184794 4.97320460 0.04360384
## Sick_y   0.3743285  0.724455451  0.005654057 0.1424776 2.22485469 0.01950698
## F        3.5897734  0.007376848  2.774536662 0.6446929 0.13812541 0.14328013
## M        3.7227280  0.007650064  2.877297279 0.6685705 0.14324116 0.14858680
## Nausea_n 0.1488109  9.908155407  3.437403266 0.4261239 0.05079823 0.07937350
## Nausea_y 0.5332390 35.504223542 12.317361704 1.5269440 0.18202698 0.28442170
##               Dim 13
## Sick_n   46.56961858
## Sick_y   20.83377674
## F         0.01269434
## M         0.01316450
## Nausea_n  0.03204550
## Nausea_y  0.11482969

Gráfico cos(2x)

Primeramente, se presenta el top 15 de los cos2(x) de las variables:

fviz_cos2(poisonAFCM, choice = "var", axes = 1:2, top = 15)

De acuerdo con el gráfico, las modalidades mejores representadas en las primeras dos dimensiones son Sick_y y Sick_n, seguidas de los síntomas. En cambio, la calidad de la representación de los alimentos es menor.

Gráfico de las contribuciones de las modalidades a la formación de los ejes

El top 15 de las calidades de las modalidades se muestran en el siguiente gráfico:

fviz_contrib(poisonAFCM, choice = "var", axes = 1:2, top = 15)

Según lo observado en el gráfico, las modalidades que más contribuyen a la formación de la dimensión 1 y 2 son Sick_n y Abdo_n. Por otro lado, las modalidades Vomit_n, Icecream_n y Cheese_n aportan menos del umbral promedio de contribución.

Gráficos de cos2(x) y contribuciones de los individuos

Se van a gráficar las calidades de representación y las contribuciones de los individuos para las dos primeras dimensiones.

Para lo cual, es necesario conocer los cosenos cuadrados y contribuciones de los individuos.

Cos2 de los individuos

ind <- get_mca_ind(poisonAFCM)
head(ind$cos2)
##        Dim 1        Dim 2       Dim 3      Dim 4      Dim 5        Dim 6
## 1 0.32530703 2.143010e-02 0.154136555 0.00518675 0.13416251 0.0009205402
## 2 0.58801184 2.776803e-03 0.001080741 0.01337778 0.02493613 0.2552141452
## 3 0.48538429 8.488907e-02 0.027870606 0.11308468 0.14009546 0.0026644180
## 4 0.74564630 9.218472e-06 0.004460935 0.01035271 0.02319633 0.0314781156
## 5 0.49864491 1.350419e-04 0.197070106 0.02508845 0.06979403 0.0130325005
## 6 0.03423215 9.421366e-02 0.308344300 0.39093000 0.06363308 0.0001602813
##          Dim 7      Dim 8        Dim 9      Dim 10       Dim 11       Dim 12
## 1 0.0030384584 0.09466672 0.0781906788 0.174669955 0.0057567450 3.702276e-04
## 2 0.0042065478 0.09415345 0.0136500503 0.001548660 0.0009182242 8.769550e-05
## 3 0.0005839826 0.04312476 0.0003336023 0.073033407 0.0176950963 6.681889e-03
## 4 0.0079030515 0.03653464 0.1391574070 0.000518539 0.0005325915 2.101390e-04
## 5 0.0646843299 0.03835717 0.0486792890 0.029190024 0.0075625342 1.238107e-03
## 6 0.0432152065 0.03934786 0.0137477299 0.012154275 0.0000213496 1.036160e-07
##         Dim 13
## 1 2.163735e-03
## 2 3.793125e-05
## 3 4.558732e-03
## 4 3.660726e-08
## 5 6.523507e-03
## 6 4.387691e-10

Contribuciones de los individuos

head(ind$contrib)
##       Dim 1        Dim 2       Dim 3       Dim 4     Dim 5      Dim 6
## 1 1.0170795 0.2095097459  1.82247165  0.06985499 2.0025538 0.01537006
## 2 3.9573754 0.0584365829  0.02750658  0.38783411 0.8012017 9.17270072
## 3 1.0437283 0.5707844717  0.22664274  1.04748098 1.4381936 0.03059676
## 4 4.3013812 0.0001662848  0.09731832  0.25725842 0.6388307 0.96973950
## 5 1.0865750 0.0009201435  1.62398773  0.23549560 0.7260694 0.15165872
## 6 0.7933878 6.8278476824 27.02594638 39.02931694 7.0408618 0.01983834
##         Dim 7     Dim 8       Dim 9     Dim 10     Dim 11       Dim 12
## 1 0.056296294 1.9901155 1.904054477 5.58431758 0.54716394 3.950615e-02
## 2 0.167769131 4.2606605 0.715514367 0.10657806 0.18786633 2.014341e-02
## 3 0.007441606 0.6235165 0.005587193 1.60588237 1.15673448 4.903831e-01
## 4 0.270168626 1.4170963 6.252364810 0.03058771 0.09340031 4.137292e-02
## 5 0.835280710 0.5619975 0.826181514 0.65041898 0.50097343 9.207910e-02
## 6 5.935440475 6.1318563 2.481676851 2.88051941 0.01504250 8.196202e-05
##         Dim 13
## 1 1.153970e+00
## 2 4.354590e-02
## 3 1.672148e+00
## 4 3.602228e-05
## 5 2.424814e+00
## 6 1.734668e-06

Gráfico cos(2x)

El siguiente gráfico muestra el top 15 de las calidades de representación de los individuos:

fviz_cos2(poisonAFCM, choice = "ind", axes = 1:2, top = 15)

Se puede observar en el gráfico, que todos los individuos del top se encuentran bien representados pues, presentan un valor del coseno al cuadrado mayor al 10%. También, se puede ver que los individuos mejores representados son el 51, 20, 4 y 14.

Gráfico de las contribuciones de las modalidades a la formación de los ejes

El top 15 de las contribuciones de los individuos a la formación de los ejes se presenta en el gráfico a continuación:

fviz_contrib(poisonAFCM, choice = "ind", axes = 1:2, top = 15)

De acuerdo con lo mostrado en el gráfico, los individuos que más contribuyen a la formación de la dimensión 1 y 2 son el 53 y el 44. Además, dado que la contribución de los individuos del top 15 están por encima de la línea roja, significa que el aporte de estos es superior al umbral promedio de contribución.